package com.itheima.d2_polymorphism;

public class Test {
    public static void main(String[] args) {
        //目标：搞清楚使用多态的好处
        //1.多态下右边的对象时解耦合的。
       // Animal a = new Cat();
        Animal a = new Dog();
        a.cry();

        Cat c = new Cat();
        go(c);

        System.out.println("========分割线========");

        Dog d = new Dog();
        go(d);


        System.out.println("----------------------");


    }

    //2.多态下，父类类型作为方法的形参，可以接受一切子类对象，方法更便利。
    public static void go(Animal c){
        System.out.println("开始。。。。。");
        c.cry();//对象回调
        System.out.println("结束。。。。。");

        //3.多态下存在的一个问题，不能直接调用子类独有的功能。
        //a.lookDoor();
        //a.eatFish(0);

    }
}
